이것이 코딩 테스트다 Part3, DFS/BFS bfs : 너비 우선 탐색, 가까운 노드부터 탐색하는 알고리즘, 선입선출 방식의 큐를 이용하면 효과적으로 구현할 수 있다. 그래프에서 모든 간선의 비용이 동일할 때는 너비 우선 탐색(BFS)을 이용하여 최단 거리를 찾을 수 있다. 모든 도로의 거리는 '1'이라는 조건 덕분에 너비 우선 탐색을 이용하여 간단히 해결할 수 있다. 너비 우선 탐색을 이용하여 시간 복잡도 O(N + M)으로 동작하는... python이것이 코딩 테스트다algorithmalgorithm Part2, DFS/BFS 스택 자료구조를 활용해야 하는 상당수 알고리즘은 재귀 함수를 이용해서 간편하게 구현될 수 있다. 탐색 알고리즘 DFS/BFS DFS : 깊이 우선 탐색, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 인접 행렬(Adjacency Matrix) : 2차원 배열로 그래프의 연결 관계를 표현하는 방식 인접 리스트(Adjacency List) : 리스트로 그래프의 연결 관계를 표현하는 방식 인... python이것이 코딩 테스트다algorithmalgorithm 떡볶이 떡 만들기 오늘 동빈이는 여행 가신 부모님을 대신해서 떡집 일을 하기로 했다. 오늘은 떡볶이 떡을 만드는 날이다. 동빈이네 떡볶이 떡은 재밌게도 떡볶이 떡의 길이가 일정하지 않다. 대신에 한 봉지 안에 들어 가는 떡의 총 길이는 절단기로 잘라서 맞춰준다. 절단기에 높이(H)를 지정하면 줄지어진 떡을 한 번에 절단한다. 높이가 H보다 긴 떡은 H 위의 부분이 잘릴 것이고, 낮은 떡은 잘리지 않는다. 예를... 알고리즘이진 탐색이것이 코딩 테스트다pythonpython [이것이 코딩 테스트다] 그리디 - 1이 될 때까지 그리디 현재 상황에서 지금 당장 좋은 것만 고르는 방법 어떠한 수 N이 1이 될 때까지 두 과정 중 하나를 반복적으로 선택하여 수해하려고 한다. 단, 두 번째 연산은 N이 K로 나누어 떨어질 때만 선택할 수 있다. N에서 1을 뺀다. N을 K로 나눈다. N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오. 입력 예시 출력... 이것이 코딩 테스트다algorithm그리디algorithm [이것이 코딩 테스트다] 그리디 - 큰 수의 법칙 큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더하여 가장 큰 수를 만드는 법칙이다. 단, 배열의 특정한 인덱스(번호)에 해당하는 수가 연속해서 K번을 초과하여 더해질 수 없는 것이 이 법칙의 특징이다. 배열의 크기 N, 숫자가 더해지는 횟수 M, 그리고 K가 주어질 때 동빈이의 큰 수의 법칙에 따른 결과를 출력하시오. 입력 조건 첫째 줄에 N(2 <= N <= 1... 이것이 코딩 테스트다algorithm그리디algorithm Algorithm/이것이 코딩 테스트다/최단 경로/전보 그리고 각 도시는 보내고자 하는 메시지가 있는 경우, 다른 도시로 전보를 보내서 다른 도시로 해당 메시지를 전송할 수 있다.하지만 X라는 도시에서 Y라는 도시로 전보를 보내고자 한다면, 도시 X에서 Y로 향하는 통로가 설치되어 있어야 한다. 예를 들어 X에서 Y로 향하는 통로는 있지만, Y에서 X로 향하는 통로가 없다면 Y는 X로 메시지를 보낼 수 없다. 또한 통로를 거쳐 메시지를 보낼 때는... 알고리즘 문제최단 경로이것이 코딩 테스트다알고리즘 문제 책 정리 내용(이것이 코딩 테스트다) 백준 온라인 저지에서 관련 문제 50개를 푼다. 백준 온라인 저지 : 삼성 SW 역량테스트 대비 문제집 제공 복잡도 시간 복잡도 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미 빅오 표기법을 사용한다. 빅오 표기법 O(1) 상수 시간(Constant time) O(logN) 로그 시간(Log time) O(N) 선형 시간 O(NlogN) 로그 선형 시간 O(N^2) 이차 ... 이것이 코딩 테스트다pythonpython [이것이 코딩 테스트다] 이진 탐색 - 고정점 찾기 이진 탐색 찾으려는 데이터와 중간점 위치에 있는 데이터를 반복적으로 비교해서 원하는 데이터를 찾는 방법 고정점이란, 수열의 원소 중에서 그 값이 인덱스와 동일한 원소를 의미합니다. 하나의 수열이 N개의 서로 다른 원소를 포함하고 있으며, 모든 워노가 오름차순으로 정렬되어 있습니다. 이때 이 수열에서 고정점이 있다면, 고정점을 출력하는 프로그램을 작성하세요. 고정점은 최대 1개만 존재합니다. ... 이진 탐색이것이 코딩 테스트다algorithmalgorithm 이것이 코딩 테스트다 | 떡볶이 떡 만들기 예를 들어 높이가 19, 14, 10, 17cm인 떡이 나란히 있고 절단기 높이를 15cm로 지정하면 자른 뒤 떡의 높이는 15, 14, 10, 15cm가 될 것이다. 손님이 왔을 때 요청한 총 길이가 M일 때 적어도 M만큼의 떡을 얻기 위해 절단기에 설정할 수 있는 높이의 최댓값을 구하는 프로그램을 작성하시오. 이 문제에서 우리가 찾으려는 데이터는 적어도 자른 떡의 길이 합을 얻기 위한 절... 코딩테스트알고리즘이진탐색이것이 코딩 테스트다파이썬알고리즘
Part3, DFS/BFS bfs : 너비 우선 탐색, 가까운 노드부터 탐색하는 알고리즘, 선입선출 방식의 큐를 이용하면 효과적으로 구현할 수 있다. 그래프에서 모든 간선의 비용이 동일할 때는 너비 우선 탐색(BFS)을 이용하여 최단 거리를 찾을 수 있다. 모든 도로의 거리는 '1'이라는 조건 덕분에 너비 우선 탐색을 이용하여 간단히 해결할 수 있다. 너비 우선 탐색을 이용하여 시간 복잡도 O(N + M)으로 동작하는... python이것이 코딩 테스트다algorithmalgorithm Part2, DFS/BFS 스택 자료구조를 활용해야 하는 상당수 알고리즘은 재귀 함수를 이용해서 간편하게 구현될 수 있다. 탐색 알고리즘 DFS/BFS DFS : 깊이 우선 탐색, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 인접 행렬(Adjacency Matrix) : 2차원 배열로 그래프의 연결 관계를 표현하는 방식 인접 리스트(Adjacency List) : 리스트로 그래프의 연결 관계를 표현하는 방식 인... python이것이 코딩 테스트다algorithmalgorithm 떡볶이 떡 만들기 오늘 동빈이는 여행 가신 부모님을 대신해서 떡집 일을 하기로 했다. 오늘은 떡볶이 떡을 만드는 날이다. 동빈이네 떡볶이 떡은 재밌게도 떡볶이 떡의 길이가 일정하지 않다. 대신에 한 봉지 안에 들어 가는 떡의 총 길이는 절단기로 잘라서 맞춰준다. 절단기에 높이(H)를 지정하면 줄지어진 떡을 한 번에 절단한다. 높이가 H보다 긴 떡은 H 위의 부분이 잘릴 것이고, 낮은 떡은 잘리지 않는다. 예를... 알고리즘이진 탐색이것이 코딩 테스트다pythonpython [이것이 코딩 테스트다] 그리디 - 1이 될 때까지 그리디 현재 상황에서 지금 당장 좋은 것만 고르는 방법 어떠한 수 N이 1이 될 때까지 두 과정 중 하나를 반복적으로 선택하여 수해하려고 한다. 단, 두 번째 연산은 N이 K로 나누어 떨어질 때만 선택할 수 있다. N에서 1을 뺀다. N을 K로 나눈다. N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오. 입력 예시 출력... 이것이 코딩 테스트다algorithm그리디algorithm [이것이 코딩 테스트다] 그리디 - 큰 수의 법칙 큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더하여 가장 큰 수를 만드는 법칙이다. 단, 배열의 특정한 인덱스(번호)에 해당하는 수가 연속해서 K번을 초과하여 더해질 수 없는 것이 이 법칙의 특징이다. 배열의 크기 N, 숫자가 더해지는 횟수 M, 그리고 K가 주어질 때 동빈이의 큰 수의 법칙에 따른 결과를 출력하시오. 입력 조건 첫째 줄에 N(2 <= N <= 1... 이것이 코딩 테스트다algorithm그리디algorithm Algorithm/이것이 코딩 테스트다/최단 경로/전보 그리고 각 도시는 보내고자 하는 메시지가 있는 경우, 다른 도시로 전보를 보내서 다른 도시로 해당 메시지를 전송할 수 있다.하지만 X라는 도시에서 Y라는 도시로 전보를 보내고자 한다면, 도시 X에서 Y로 향하는 통로가 설치되어 있어야 한다. 예를 들어 X에서 Y로 향하는 통로는 있지만, Y에서 X로 향하는 통로가 없다면 Y는 X로 메시지를 보낼 수 없다. 또한 통로를 거쳐 메시지를 보낼 때는... 알고리즘 문제최단 경로이것이 코딩 테스트다알고리즘 문제 책 정리 내용(이것이 코딩 테스트다) 백준 온라인 저지에서 관련 문제 50개를 푼다. 백준 온라인 저지 : 삼성 SW 역량테스트 대비 문제집 제공 복잡도 시간 복잡도 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미 빅오 표기법을 사용한다. 빅오 표기법 O(1) 상수 시간(Constant time) O(logN) 로그 시간(Log time) O(N) 선형 시간 O(NlogN) 로그 선형 시간 O(N^2) 이차 ... 이것이 코딩 테스트다pythonpython [이것이 코딩 테스트다] 이진 탐색 - 고정점 찾기 이진 탐색 찾으려는 데이터와 중간점 위치에 있는 데이터를 반복적으로 비교해서 원하는 데이터를 찾는 방법 고정점이란, 수열의 원소 중에서 그 값이 인덱스와 동일한 원소를 의미합니다. 하나의 수열이 N개의 서로 다른 원소를 포함하고 있으며, 모든 워노가 오름차순으로 정렬되어 있습니다. 이때 이 수열에서 고정점이 있다면, 고정점을 출력하는 프로그램을 작성하세요. 고정점은 최대 1개만 존재합니다. ... 이진 탐색이것이 코딩 테스트다algorithmalgorithm 이것이 코딩 테스트다 | 떡볶이 떡 만들기 예를 들어 높이가 19, 14, 10, 17cm인 떡이 나란히 있고 절단기 높이를 15cm로 지정하면 자른 뒤 떡의 높이는 15, 14, 10, 15cm가 될 것이다. 손님이 왔을 때 요청한 총 길이가 M일 때 적어도 M만큼의 떡을 얻기 위해 절단기에 설정할 수 있는 높이의 최댓값을 구하는 프로그램을 작성하시오. 이 문제에서 우리가 찾으려는 데이터는 적어도 자른 떡의 길이 합을 얻기 위한 절... 코딩테스트알고리즘이진탐색이것이 코딩 테스트다파이썬알고리즘